package com.meta.act.app.service;

import com.meta.act.app.tenant.req.TenantAddUserCmd;
import com.meta.act.app.tenant.req.TenantCreateCmd;
import com.meta.act.app.tenant.req.TenantEditCmd;
import com.meta.act.app.tenant.req.TenantEditUserCmd;
import com.meta.framework.act.entity.SysUser;

import java.util.List;

/**
 * 租户信息表
 * 
 * @author Simon
 * @email 1111111111111@qq.com
 * @date 2020-11-04 15:23:04
 */
public interface TenantAppService {

	/**
	 * insert tenantBase info
	 * @method      insertTenantBase
	 * @param       tenantBase:
	 * @return      void
	 * @author      Simon
	 * @date        2020-11-04 15:23:04
	 */
	Long save(TenantCreateCmd tenantBase);
	void edit(TenantEditCmd cmd);
	void addUser(TenantAddUserCmd cmd);
	void editUser(TenantEditUserCmd cmd);

	int deleteUserByIds(List<Long> userIds);

	/**
	 * 创建租户用户信息
	 * @method      createTenantUser
	 * @param       user:
	 * @return      int
	 * @author      M.simple
	 * @date        2020/11/25 3:00 下午
	 * @version     v2.0
	 */
	int createTenantUser(SysUser user);

	void updateDept(Long userId, Long deptId);
}
